package cn.good.yan.mapper;

import cn.good.yan.pojo.Bill;
import cn.good.yan.pojo.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * XML的使用
 *
 * @author shengren.yan
 * @create 2022-12-04
 */
// 指定这是操作数据的Mapper，主启动器有@MapperScan，就不需要 @Mapper
@Repository
public interface UserMapper {

    // 普通查询
    List<User> findAll();

    // 带条件查询
    List<User> findAllByUser(@Param("vo") User user);

    // 新增一个
    int insetOne(User user);

    // 新增一个
    void insetALl(@Param("lists") List<User> list);

    // 修改
    int updateUser(User user);

    // 删除
    int deleteUser(@Param("id") Integer id);

    // 批量删除  注意：参数是字符串 1,3,4
    int deleteUserByIds(@Param("ids") String ids);

    // 动态设置表名，
    List<User> getUserByTable (@Param("table")  String table);

    // 关联查询 ： 一对一 查询
    List<Bill> findBillAll();

    // 关联查询 ： 多对一 查询
    List<Bill> findBillAllMore();


}
